package org.gushi.algorithm.a08;

/**
 * 链接：https://www.pdai.tech/md/algorithm/alg-sort-x-bucket.html
 *
 * 假设待排序的数组a中共有N个整数，并且已知数组a中数据的范围[0, MAX)。在桶排序时，创建容量为MAX的桶数组r，并将桶数组元素都初始化为0；
 * 将容量为MAX的桶数组中的每一个单元都看作一个"桶"。 在排序时，逐个遍历数组a，将数组a的值，作为"桶数组r"的下标。当a中数据被读取时，就将桶的值加1。例如，读取到数组a[3]=5，则将r[5]的值+1。
 */
public class BucketSort {

    private int[] list;


    public BucketSort(int[] list) {
        this.list = list;
    }


    public int[] sort() {

        int[] res = new int[10];//0-9

        for (int i = 0; i < list.length; i++) {
            res[list[i]] = res[list[i]] + 1;
        }


        return res;
    }
}
